home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #2 / Amiga Plus CD - 1995 - No. 2.iso / pd / grafik / mandelsquare-ham / plotham.c < prev    next >
C/C++ Source or Header  |  1995-04-11  |  11KB  |  340 lines

  1. extern VOID __asm Set(register __a0 PLANEPTR *,register __d0 WORD X,register __d2 WORD Colour,register __d3 WORD Depth);
  2.  
  3. STATIC BYTE MaxDelta[16][16][16] =
  4. {
  5.     2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  6.     1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  7.     1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  8.     1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,
  9.     1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,
  10.     1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,
  11.     1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
  12.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  13.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  14.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  15.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  16.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  17.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  18.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  19.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  20.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  21.  
  22.     0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  23.     1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  24.     1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  25.     1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,
  26.     1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,
  27.     1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,
  28.     1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
  29.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  30.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  31.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  32.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  33.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  34.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  35.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  36.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  37.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  38.  
  39.     0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  40.     0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  41.     1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,2,
  42.     1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,
  43.     1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,
  44.     1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,
  45.     1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
  46.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  47.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  48.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  49.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  50.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  51.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  52.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  53.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  54.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  55.  
  56.     0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,
  57.     0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,
  58.     0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,2,
  59.     1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,2,
  60.     1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,
  61.     1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,
  62.     1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
  63.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  64.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  65.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  66.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  67.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  68.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  69.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  70.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  71.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  72.  
  73.     0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,
  74.     0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,
  75.     0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,
  76.     0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,2,
  77.     1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,2,
  78.     1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,
  79.     1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
  80.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  81.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  82.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  83.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  84.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  85.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  86.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  87.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  88.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  89.  
  90.     0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,
  91.     0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,
  92.     0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,
  93.     0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,
  94.     0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,2,
  95.     1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,2,
  96.     1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
  97.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  98.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  99.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  100.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  101.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  102.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  103.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  104.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  105.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  106.  
  107.     0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,
  108.     0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,
  109.     0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,
  110.     0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,
  111.     0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,
  112.     0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,2,
  113.     1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,
  114.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  115.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  116.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  117.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  118.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  119.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  120.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  121.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  122.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  123.  
  124.     0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,
  125.     0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,
  126.     0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,
  127.     0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,
  128.     0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,
  129.     0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,
  130.     0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,2,
  131.     1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,
  132.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  133.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  134.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  135.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  136.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  137.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  138.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  139.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  140.  
  141.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  142.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  143.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  144.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  145.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  146.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  147.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  148.     0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,2,
  149.     1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,
  150.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  151.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  152.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  153.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  154.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  155.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  156.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  157.  
  158.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  159.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  160.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  161.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  162.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  163.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  164.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  165.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  166.     0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,2,
  167.     1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,
  168.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  169.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  170.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  171.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  172.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  173.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  174.  
  175.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  176.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  177.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  178.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  179.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  180.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  181.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  182.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  183.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  184.     0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,2,
  185.     1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,
  186.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  187.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  188.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  189.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  190.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  191.  
  192.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  193.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  194.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  195.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  196.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  197.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  198.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  199.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  200.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  201.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  202.     0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,2,
  203.     1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,
  204.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  205.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  206.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  207.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  208.  
  209.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  210.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  211.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  212.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  213.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  214.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  215.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  216.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  217.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  218.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  219.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  220.     0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,2,
  221.     1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,2,
  222.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  223.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  224.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  225.  
  226.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  227.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  228.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  229.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  230.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  231.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  232.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  233.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  234.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  235.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  236.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  237.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  238.     0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,2,
  239.     1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,2,
  240.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  241.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  242.  
  243.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  244.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  245.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  246.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  247.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  248.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  249.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  250.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  251.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  252.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  253.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  254.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  255.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  256.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,2,
  257.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,2,
  258.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,
  259.  
  260.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  261.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  262.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  263.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  264.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  265.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  266.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  267.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  268.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  269.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  270.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  271.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  272.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  273.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  274.     0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,
  275.     1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2
  276. };
  277.  
  278. STATIC BYTE Diff[16][16] =
  279. {
  280.      0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,15,
  281.      1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,14,
  282.      2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,13,
  283.      3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,12,
  284.      4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,11,
  285.      5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10,
  286.      6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,
  287.      7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7, 8,
  288.      8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6, 7,
  289.      9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5, 6,
  290.     10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4, 5,
  291.     11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3, 4,
  292.     12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2, 3,
  293.     13,12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1, 2,
  294.     14,13,12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0, 1,
  295.     15,14,13,12,11,10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0
  296. };
  297.  
  298. VOID __regargs
  299. SetHAM(PLANEPTR *Planes,WORD X,UWORD RGB,BYTE Depth)
  300. {
  301.     STATIC    UBYTE LastRed,LastGreen,LastBlue;
  302.         UBYTE Red,Green,Blue;
  303.  
  304.     Red    = (RGB >> 8) & 0xF;
  305.     Green    = (RGB >> 4) & 0xF;
  306.     Blue    =  RGB       & 0xF;
  307.  
  308.     if(X)
  309.     {
  310.         switch(MaxDelta[Diff[LastRed][Red]][Diff[LastGreen][Green]][Diff[LastBlue][Blue]])
  311.         {
  312.             case 0:    Set(Planes,X,0x20 | (LastRed = Red),Depth);
  313.                 break;
  314.  
  315.             case 1:    Set(Planes,X,0x30 | (LastGreen = Green),Depth);
  316.                 break;
  317.  
  318.             case 2:    Set(Planes,X,0x10 | (LastBlue = Blue),Depth);
  319.                 break;
  320.         }
  321.     }
  322.     else
  323.     {
  324.         switch(MaxDelta[Red][Green][Blue])
  325.         {
  326.             case 0:    Set(Planes,X,0x20 | (LastRed = Red),Depth);
  327.                 LastGreen = LastBlue = 0;
  328.                 break;
  329.  
  330.             case 1:    Set(Planes,X,0x30 | (LastGreen = Green),Depth);
  331.                 LastRed = LastBlue = 0;
  332.                 break;
  333.  
  334.             case 2:    Set(Planes,X,0x10 | (LastBlue = Blue),Depth);
  335.                 LastRed = LastGreen = 0;
  336.                 break;
  337.         }
  338.     }
  339. }
  340.